Technical overview

SNiFF+'s CMVC support provides the functionality available in the RCS version control system. If you use a tool other than RCS, please be aware that your tool may not support all of the functionality available in SNiFF+.
Features
SNiFF+'s CMVC support comes with the following features:

- Checking out files from your Repository with either exclusive lock, concurrent lock, or no lock.
- Looking at a file's history and seeing which files in a project are locked by which people.
- Working with configurations - selected file versions grouped together under the same symbolic name.
- Working with change sets - a set of files checked in at the same time under the same symbolic name to the files.
- Working in branches of a file's version tree.
- Displaying two-way and three-way differences and merging versions, branches, change sets and configurations.
- Associating comments, dates and modifier information with versions, change sets, and configurations.
- Choosing a Default Configuration for a working environment.

Your Repository
SNiFF+ only manages the structure of your Repository, but does not access the Repository's files directly -- the access is delegated to your underlying version control tool.
Differences between SCCS and RCS support
SNiFF+'s support for the creation and management of branches differs for SCCS and RCS. Please note the following differences in SNiFF+'s functionality when using SCCS for version control:

- With SCCS, you cannot associate a symbolic name to the latest version of a file on a branch.
- With RCS, you create branches when you check in a file version. With SCCS, you create branches during check-out.

Working environments and version control
In team projects, each team member works in a Private Working Environment (PWE). All version control commands performed by team members are then naturally executed in the PWE. Your Working Environments Administrator, however, is also the owner of your team's Shared Source Working Environment (SSWE). While maintaining your team projects, he/she may also perform version control commands in the SSWE.
In the rest of this chapter, you will read phrases like:

- "the working environment you are currently in", or
- "in your working environment", or
- "in the working environment".

If you are a team member, these phrases refer to your PWE. If you are your team's Working Environments Administrator, these phrases refer to your team's SSWE.